A computing environment may include main storage (a.k.a., main memory), as well as auxiliary storage. Main storage is storage accessible to a processor which is randomly addressable by, for instance, an absolute address. Main storage is considered fast access storage compared to auxiliary storage, such as direct access storage devices or storage class memory.
Storage class memory, such as non-volatile memory (NVM), which is an external storage space outside of classical main storage, provides faster access than direct access storage devices. Unlike direct access storage devices, storage class memory is not typically implemented as mechanical-arm spinning disks, but instead, non-mechanical solid state parts. Thus, storage class memory is particularly useful when caching data in memory that is frequently accessed, since it accelerates access (reduces latency) to the data from slower storage media. As the cache becomes full, an eviction policy, such as least recently used (LRU) or adaptive replacement cache (ARC), is responsible for removing less frequently accessed data from the memory so as to further reduce latency.